# import ssl
# ssl._create_default_https_context = ssl._create_unverified_context
# from qcloudsms_py import SmsMultiSender, SmsSingleSender
# from qcloudsms_py.httpclient import HTTPError
# def send_sms_single(phone_num, template_id, template_param_list):
#     """
#     单条发送短信
#     :param phone_num: 手机号
#     :param template_id: 腾讯云短信模板ID
#     :param template_param_list: 短信模板所需参数列表，例如:【验证码：{1}，描述：{2}】，则传递参数 [888,666]按顺序去格式化模板
#     :return:
#     """
#     appid = 1400576604  # 自己应用ID
#     appkey = "a83ab9b471c3538ab3a07550b4d00117"  # 自己应用Key
#     sms_sign = "读书空间站"  # 自己腾讯云创建签名时填写的签名内容（使用公众号的话这个值一般是公众号全称或简称）
#     sender = SmsSingleSender(appid, appkey)
#     try:
#         response = sender.send_with_param(86, phone_num, template_id, template_param_list, sign=sms_sign)
#     except HTTPError as e:
#         response = {'result': 1000, 'errmsg': "网络异常发送失败"}
#     return response
# def send_sms_multi(phone_num_list, template_id, param_list):
#     """
#     批量发送短信
#     :param phone_num_list:手机号列表
#     :param template_id:腾讯云短信模板ID
#     :param param_list:短信模板所需参数列表，例如:【验证码：{1}，描述：{2}】，则传递参数 [888,666]按顺序去格式化模板
#     :return:
#     """
#     appid = 1400576604
#     appkey = "a83ab9b471c3538ab3a07550b4d00117"
#     sms_sign = "读书空间站"
#     sender = SmsMultiSender(appid, appkey)
#     try:
#         response = sender.send_with_param(86, phone_num_list, template_id, param_list, sign=sms_sign)
#     except HTTPError as e:
#         response = {'result': 1000, 'errmsg': "网络异常发送失败"}
#     return response


from tencentcloud.common import credential
from tencentcloud.common.exception.tencent_cloud_sdk_exception import TencentCloudSDKException
# 导入 SMS 模块的client models
from tencentcloud.sms.v20190711 import sms_client, models
# 导入可选配置类
from tencentcloud.common.profile.client_profile import ClientProfile
from tencentcloud.common.profile.http_profile import HttpProfile



class SmsCode:

  def __init__(self):
    self.cred = credential.Credential('AKID9k59wTjiQr2xby5vUmoa5JHzQaT5QUHo', "HH0SdXBXdRyEExPaU8VbQUHn1zg6F7j3")
    self.client = sms_client.SmsClient(self.cred, "ap-guangzhou")
    self.req = models.SendSmsRequest()
    self.req.SmsSdkAppid = '1400576604'   #
    self.req.Sign = "读书空间站"
    # self.req.TemplateID =  "1314402"
  def send(self, phone_number,templateid, sms_code):

    try:
      self.req.PhoneNumberSet = [f"+86{phone_number}".strip()]
      self.req.TemplateID = templateid # "1314402"
      self.req.TemplateParamSet = [sms_code]
      resp = self.client.SendSms(self.req)
      return resp.SendStatusSet[0].Code
    except TencentCloudSDKException as err:
      print(err)


if __name__ == '__main__':
    res=SmsCode()
    q=res.send('','1111')
    print(q)

# if __name__ == '__main__':
#     result1 = send_sms_single("15203664920", 548760, [666, ])
#     print(result1)
    # result2 = send_sms_single( ["15131255089", "15131255089", "15131255089", ],548760, [999, ])
    # print(result2)